package com.ssm.dto;

/**
 * Created by Sobte on 2017/3/16.
 */
public class ResultFormat<T> {

    /**
     * 状态代码
     */
    protected int status;

    /**
     * 返回的数据
     */
    protected T data;

    /**
     * 返回的信息
     */
    protected String msg;

    public ResultFormat() {
    }

    public ResultFormat(StatusEnum statusEnum) {
        this.status = statusEnum.getStatus();
        setMsg(statusEnum.getMsg());
    }

    public ResultFormat(StatusEnum statusEnum, String msg) {
        this(statusEnum);
        setMsg(msg);
    }

    public ResultFormat(StatusEnum statusEnum, T data) {
        this(statusEnum);
        this.data = data;
    }

    public ResultFormat(StatusEnum statusEnum, T data, String msg) {
        this(statusEnum);
        this.data = data;
        setMsg(msg);
    }

    public ResultFormat(int status, String msg) {
        this.status = status;
        setMsg(msg);
    }

    public ResultFormat(int status, T data, String msg) {
        this.status = status;
        this.data = data;
        setMsg(msg);
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    @Override
    public String toString() {
        return "ResultFormat{" +
                "status=" + status +
                ", data=" + data +
                ", msg='" + msg + '\'' +
                '}';
    }
}
